<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>小球弹跳</title>
  <style>
    * {
      margin: 0;
      padding: 0;
    }
    body {
      width: 100vw;
      height: 100vh;
      background: #34495e;
      display: grid;
      grid-template: 1fr/repeat(5, 1fr);
    }
    div {
      grid-column: 3/4;
      width: 50px;
      height: 50px;
      border-radius: 50%;
      background: #e67e22;
      justify-self: center;
      animation-name: move;
      animation-duration: 3s;
      animation-iteration-count: infinite;
      animation-fill-mode: forwards;
    }
    @keyframes move {
      0% {
        transform: translateY(0vh);
      }
      30% {
        transform: translateY(10vh);
      }
      60% {
        transform: translateY(40vh);
      }
      80% {
        transform: translateY(60vh);
      }
      95% {
        transform: translateY(75vh);
      }
      0%, 30%, 60%, 80%, 90%{
        transition-timing-function: ease-in;
      }
      15%, 45%, 75%, 85%, 100% {
        transform: translateY(90vh);
        transition-timing-function: ease-out;
      }
    }

  </style>
</head>
<body>
  <div></div>
</body>
</html>